package com.lrkj.payfee.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.lrkj.common.annotation.Excel;
import com.lrkj.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 付款单明细对象 tb_advice_payment_detail
 *
 * @author yajun_ren
 * @date 2022-03-26
 */
@Data
public class AdvicePaymentDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private String id;

    /** 付款单ID */
    @Excel(name = "付款单ID")
    private String advicePaymentId;

    /** 应付年月 */
    @Excel(name = "应付年月")
    private String copeYearMonth;

    /** 付款项目 */
    @Excel(name = "付款项目")
    private String paymentItemsId;

    /** 现付金额 */
    @Excel(name = "现付金额")
    private BigDecimal paymentMoney;

    /** 付款日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "付款日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date paymentTime;

    /** 应付说明 */
    @Excel(name = "应付说明")
    private String copeRemark;

    /** 扣款说明 */
    @Excel(name = "扣款说明")
    private String noteRemark;

    /** 业务ID */
    @Excel(name = "业务ID")
    private String businessId;

    /** 业务类型 */
    @Excel(name = "业务类型")
    private String businessType;

    /** 业务单号 */
    @Excel(name = "业务单号")
    private String businessNo;

    /** 结账期间 */
    @Excel(name = "结账期间")
    private String fiscalPeriod;

    //对应应付
    private String paymentItemsName;
    //转存金额
    private BigDecimal transferAmount;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("advicePaymentId", getAdvicePaymentId())
            .append("copeYearMonth", getCopeYearMonth())
            .append("paymentItemsId", getPaymentItemsId())
            .append("paymentMoney", getPaymentMoney())
            .append("paymentTime", getPaymentTime())
            .append("copeRemark", getCopeRemark())
            .append("noteRemark", getNoteRemark())
            .append("businessId", getBusinessId())
            .append("businessType", getBusinessType())
            .append("businessNo", getBusinessNo())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("fiscalPeriod", getFiscalPeriod())
            .toString();
    }
}
